package com.gzy.literature.service;

import com.github.pagehelper.Page;
import com.github.pagehelper.PageInfo;
import com.gzy.literature.entity.UserWorks;

public interface UserWorksService {
    /**
     * 通过userId和workId查询单条数据
     *
     * @param userId 用户ID
     * @param workId 作品ID
     * @return 实例对象
     */
    UserWorks queryByIdAndWorkId(Integer userId, Integer workId);

    /**
     * 分页查询（根据接口签名实现）
     *
     * @param userWorks 筛选条件
     * @param pageNum 页码，从1开始
     * @param pageSize 页面大小
     * @return 查询结果
     */
    PageInfo<UserWorks> queryFll(UserWorks userWorks, int pageNum, int pageSize);

    /**
     * 新增数据
     *
     * @param userWorks 实例对象
     * @return 实例对象
     */
    UserWorks insert(UserWorks userWorks);

    /**
     * 修改数据
     *
     * @param userWorks 实例对象
     * @return 影响行数
     */
    int update(UserWorks userWorks);

    /**
     * 通过userId删除数据（可能删除多条，如果workId不是唯一的）
     *
     * @param userId 用户ID
     * @return 影响行数
     */
    int deleteByUserId(Integer userId);

    /**
     * 通过userId和workId删除单条数据
     *
     * @param userId 用户ID
     * @param workId 作品ID
     * @return 影响行数
     */
    int deleteByIdAndWorkId(Integer userId, Integer workId);
}
